﻿var http = require("http");
var express = require("express");
var sio = require("socket.io");
var app = express();
var server = http.createServer(app);

//mongo数据库加载
var dblink = require("./mongo.js");
var mongo=dblink.db;
// var login = require("login.js");

//获取form提交的数据
var bodyParser = require('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));


// 加载用于解析 cookie 的中间件
var cookieParser = require('cookie-parser');
app.use(cookieParser());

// 加载用于解析 session 的中间件
var cookieSession = require('cookie-session')
app.use(cookieSession({
  secret: 'test'
}))

//解析静态资源
app.use(express.static('public'));

//设置ejs页面魔板
app.set("view engine","ejs");

app.get("/",function(req,res){  //默认登录页
	res.render("login.ejs",{message:""})
});
app.get("/login.html",function(req,res){  //默认登录页
	res.render("login.ejs",{message:""})
});

app.post("/login.html",function(req,res){ //聊天室页面
	getUserInfo(req.body);
});	

app.get("/index.html",function(req,res){ //聊天室页面
	res.sendFile(__dirname+'/index.html');
});	

//var io = sio.listen(server);
//
//
//io.sockets.on("connection",function(socket){
//	console.log("服务器链接成功");
//	var groupList;
//	var loginState;
//
//	socket.on('login_test',function(data){
//		groupList="";
//		getUserInfo(data);
//	})
//});
//
//
function getUserInfo(data){
	mongo.open(function(err,db){
		db.collection("users",function(err,collection){
			if(err){
				res.render("login.ejs",{message:"系统错误"});
				console.log(err);
				db.close();
			}
			else{
				collection.find(data).toArray(function(err,docs){
					if(err){
						console.log(err);
						res.render("login.ejs",{message:"系统错误"});
						db.close();
					}
					else{
						if(docs.length==0){
							console.log("用户不存在");
							res.render("login.ejs",{message:"用户不存在"});
							db.close();
						}else{
							var groupList=docs[0].group.split(",");
							if(docs[0].online == 1){
								console.log("重复登录");
								res.render("login.ejs",{message:"重复登录"});
								db.close();
							}else{
								response.redirect(__dirname+'/index.html');
								db.close();
							}
						}
					}
				})
			}
		})
	})
}
server.listen(1337);
